package main

import (
	"net/http"

	"github.com/gin-gonic/gin"
)

func main() {
	r := gin.Default() //生成默认路由

	r.GET("/json", func(c *gin.Context) {
		// 方法1 : 使用map
		// data := map[string]interface{}{
		// 	"name":    "芙蕾米",
		// 	"message": "hello!",
		// 	"age":     17,
		// }

		//GIN框架里gin.H 就是 map[string]interface{}类型
		data := gin.H{"name": "芙蕾米", "message": "hello!", "age": 16}
		c.JSON(http.StatusOK, data)

	})

	//方法2: 结构体, 灵活使用tag来对结构体字段做定制化操作
	type msg struct {
		Name    string `json:"name"`
		Message string
		Age     int
	}
	r.GET("/another_json", func(c *gin.Context) {
		data := msg{
			Name:    "芙蕾米",
			Message: "Hello O.o",
			Age:     17,
		}
		c.JSON(http.StatusOK, data)
	})

	r.Run(":9090")
}
